
import Head from 'next/head'

<Head>
  <script>
    {
      `(function() {
         var _hmt = _hmt || [];
(function() {
  var hm = document.createElement("script");
  hm.src = "https://hm.baidu.com/hm.js?e60fb290e204e04c5cb6f79b0ac1e697";
  var s = document.getElementsByTagName("script")[0]; 
  s.parentNode.insertBefore(hm, s);
})();
       })();`
    }
  </script>
</Head>

![LangChain](https://pica.zhimg.com/50/v2-56e8bbb52aa271012541c1fe1ceb11a2_r.gif)



目录加载器
 [#](#directory-loader "Permalink to this headline")
=======================================================================



本文介绍如何使用DirectoryLoader来加载目录中的所有文档。在默认情况下，它使用 `UnstructuredLoader` 进行操作。
 
```python
from langchain.document_loaders import DirectoryLoader

```

我们可以使用 `glob` 参数来控制加载哪些文件。请注意，这里不加载 `.rst` 文件或 `.ipynb` 文件。
 
```python
loader = DirectoryLoader('../', glob="**/*.md")

```

```python
docs = loader.load()

```

```python
len(docs)

```

显示进度条
 [#](#show-a-progress-bar "Permalink to this headline")
-----------------------------------------------------------------------------

默认情况下，不会显示进度条。要显示进度条，请安装 `tqdm` 库（例如 `pip install tqdm`)，并将 `show_progress` 参数设置为 `True` 。

```python
%pip install tqdm
loader = DirectoryLoader('../', glob="**/*.md", show_progress=True)
docs = loader.load()

```

更改加载器类
 [#](#change-loader-class "Permalink to this headline")
-----------------------------------------------------------------------------

默认情况下，它使用 `UnstructuredLoader` 类。但是，你可以相当容易地改变加载器的类型。

```python
from langchain.document_loaders import TextLoader

```

```python
loader = DirectoryLoader('../', glob="**/*.md", loader_cls=TextLoader)

```

```python
docs = loader.load()

```

```python
len(docs)

```

如果您需要加载Python源代码文件，请使用 `PythonLoader`。

```python
from langchain.document_loaders import PythonLoader

```

```python
loader = DirectoryLoader('../../../../../', glob="**/*.py", loader_cls=PythonLoader)

```

```python
docs = loader.load()

```

```python
len(docs)

```